package com.example.springbootdemo.mall.entity;

import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import java.math.BigDecimal;
import java.util.Date;

/**
 *@author xuwangqi
 *@date 2021/5/24 9:28
 **/
/**
    * 提现信息表
    */
@ApiModel(value="com-example-springbootdemo-entity-WithdrawInfo")
@TableName(value = "withdraw_info")
public class WithdrawInfo {
    /**
     * 自动增加ID
     */
    @TableId(value = "id", type = IdType.AUTO)
    @ApiModelProperty(value="自动增加ID")
    private Long id;

    /**
     * 提现申请人
     */
    @TableField(value = "uid")
    @ApiModelProperty(value="提现申请人")
    private Long uid;

    /**
     * 提现订单编号,系统自动生成的.
     */
    @TableField(value = "withdraw_order_no")
    @ApiModelProperty(value="提现订单编号,系统自动生成的.")
    private String withdrawOrderNo;

    /**
     * 用户要提现的账户
     */
    @TableField(value = "withdraw_account")
    @ApiModelProperty(value="用户要提现的账户")
    private Long withdrawAccount;

    /**
     * 提现手续费
     */
    @TableField(value = "withdraw_charge")
    @ApiModelProperty(value="提现手续费")
    private BigDecimal withdrawCharge;

    /**
     * 实际提现金额
     */
    @TableField(value = "withdraw_reality_total")
    @ApiModelProperty(value="实际提现金额")
    private BigDecimal withdrawRealityTotal;

    /**
     * 申请提现的金额
     */
    @TableField(value = "withdraw_apply_total")
    @ApiModelProperty(value="申请提现的金额")
    private BigDecimal withdrawApplyTotal;

    /**
     * 申请提现时间
     */
    @TableField(value = "withdraw_apply_time")
    @ApiModelProperty(value="申请提现时间")
    private Date withdrawApplyTime;

    /**
     * 提现状态,0表示申请提现,1表示审批通过,2,交易完成,-1审批不通过.
     */
    @TableField(value = "status")
    @ApiModelProperty(value="提现状态,0表示申请提现,1表示审批通过,2,交易完成,-1审批不通过.")
    private Integer status;

    /**
     * 创建人
     */
    @TableField(value = "create_by")
    @ApiModelProperty(value="创建人")
    private String createBy;

    /**
     * 创建时间
     */
    @TableField(value = "gmt_create")
    @ApiModelProperty(value="创建时间")
    private Date gmtCreate;

    /**
     * 修改人
     */
    @TableField(value = "update_by")
    @ApiModelProperty(value="修改人")
    private String updateBy;

    /**
     * 最后修改时间
     */
    @TableField(value = "gmt_modified")
    @ApiModelProperty(value="最后修改时间")
    private Date gmtModified;

    /**
     * 审核不通过原因
     */
    @TableField(value = "fail_reason")
    @ApiModelProperty(value="审核不通过原因")
    private String failReason;

    /**
     * 申请人姓名
     */
    @TableField(value = "realname")
    @ApiModelProperty(value="申请人姓名")
    private String realname;

    /**
     * 提现方式
1.银行卡
2.支付宝
3.微信
     */
    @TableField(value = "withdraw_way")
    @ApiModelProperty(value="提现方式,1.银行卡,2.支付宝,3.微信")
    private Byte withdrawWay;

    /**
     * openid
     */
    @TableField(value = "openid")
    @ApiModelProperty(value="openid")
    private String openid;

    public static final String COL_ID = "id";

    public static final String COL_UID = "uid";

    public static final String COL_WITHDRAW_ORDER_NO = "withdraw_order_no";

    public static final String COL_WITHDRAW_ACCOUNT = "withdraw_account";

    public static final String COL_WITHDRAW_CHARGE = "withdraw_charge";

    public static final String COL_WITHDRAW_REALITY_TOTAL = "withdraw_reality_total";

    public static final String COL_WITHDRAW_APPLY_TOTAL = "withdraw_apply_total";

    public static final String COL_WITHDRAW_APPLY_TIME = "withdraw_apply_time";

    public static final String COL_STATUS = "status";

    public static final String COL_CREATE_BY = "create_by";

    public static final String COL_GMT_CREATE = "gmt_create";

    public static final String COL_UPDATE_BY = "update_by";

    public static final String COL_GMT_MODIFIED = "gmt_modified";

    public static final String COL_FAIL_REASON = "fail_reason";

    public static final String COL_REALNAME = "realname";

    public static final String COL_WITHDRAW_WAY = "withdraw_way";

    public static final String COL_OPENID = "openid";

    /**
     * 获取自动增加ID
     *
     * @return id - 自动增加ID
     */
    public Long getId() {
        return id;
    }

    /**
     * 设置自动增加ID
     *
     * @param id 自动增加ID
     */
    public void setId(Long id) {
        this.id = id;
    }

    /**
     * 获取提现申请人
     *
     * @return uid - 提现申请人
     */
    public Long getUid() {
        return uid;
    }

    /**
     * 设置提现申请人
     *
     * @param uid 提现申请人
     */
    public void setUid(Long uid) {
        this.uid = uid;
    }

    /**
     * 获取提现订单编号,系统自动生成的.
     *
     * @return withdraw_order_no - 提现订单编号,系统自动生成的.
     */
    public String getWithdrawOrderNo() {
        return withdrawOrderNo;
    }

    /**
     * 设置提现订单编号,系统自动生成的.
     *
     * @param withdrawOrderNo 提现订单编号,系统自动生成的.
     */
    public void setWithdrawOrderNo(String withdrawOrderNo) {
        this.withdrawOrderNo = withdrawOrderNo;
    }

    /**
     * 获取用户要提现的账户
     *
     * @return withdraw_account - 用户要提现的账户
     */
    public Long getWithdrawAccount() {
        return withdrawAccount;
    }

    /**
     * 设置用户要提现的账户
     *
     * @param withdrawAccount 用户要提现的账户
     */
    public void setWithdrawAccount(Long withdrawAccount) {
        this.withdrawAccount = withdrawAccount;
    }

    /**
     * 获取提现手续费
     *
     * @return withdraw_charge - 提现手续费
     */
    public BigDecimal getWithdrawCharge() {
        return withdrawCharge;
    }

    /**
     * 设置提现手续费
     *
     * @param withdrawCharge 提现手续费
     */
    public void setWithdrawCharge(BigDecimal withdrawCharge) {
        this.withdrawCharge = withdrawCharge;
    }

    /**
     * 获取实际提现金额
     *
     * @return withdraw_reality_total - 实际提现金额
     */
    public BigDecimal getWithdrawRealityTotal() {
        return withdrawRealityTotal;
    }

    /**
     * 设置实际提现金额
     *
     * @param withdrawRealityTotal 实际提现金额
     */
    public void setWithdrawRealityTotal(BigDecimal withdrawRealityTotal) {
        this.withdrawRealityTotal = withdrawRealityTotal;
    }

    /**
     * 获取申请提现的金额
     *
     * @return withdraw_apply_total - 申请提现的金额
     */
    public BigDecimal getWithdrawApplyTotal() {
        return withdrawApplyTotal;
    }

    /**
     * 设置申请提现的金额
     *
     * @param withdrawApplyTotal 申请提现的金额
     */
    public void setWithdrawApplyTotal(BigDecimal withdrawApplyTotal) {
        this.withdrawApplyTotal = withdrawApplyTotal;
    }

    /**
     * 获取申请提现时间
     *
     * @return withdraw_apply_time - 申请提现时间
     */
    public Date getWithdrawApplyTime() {
        return withdrawApplyTime;
    }

    /**
     * 设置申请提现时间
     *
     * @param withdrawApplyTime 申请提现时间
     */
    public void setWithdrawApplyTime(Date withdrawApplyTime) {
        this.withdrawApplyTime = withdrawApplyTime;
    }

    /**
     * 获取提现状态,0表示申请提现,1表示审批通过,2,交易完成,-1审批不通过.
     *
     * @return status - 提现状态,0表示申请提现,1表示审批通过,2,交易完成,-1审批不通过.
     */
    public Integer getStatus() {
        return status;
    }

    /**
     * 设置提现状态,0表示申请提现,1表示审批通过,2,交易完成,-1审批不通过.
     *
     * @param status 提现状态,0表示申请提现,1表示审批通过,2,交易完成,-1审批不通过.
     */
    public void setStatus(Integer status) {
        this.status = status;
    }

    /**
     * 获取创建人
     *
     * @return create_by - 创建人
     */
    public String getCreateBy() {
        return createBy;
    }

    /**
     * 设置创建人
     *
     * @param createBy 创建人
     */
    public void setCreateBy(String createBy) {
        this.createBy = createBy;
    }

    /**
     * 获取创建时间
     *
     * @return gmt_create - 创建时间
     */
    public Date getGmtCreate() {
        return gmtCreate;
    }

    /**
     * 设置创建时间
     *
     * @param gmtCreate 创建时间
     */
    public void setGmtCreate(Date gmtCreate) {
        this.gmtCreate = gmtCreate;
    }

    /**
     * 获取修改人
     *
     * @return update_by - 修改人
     */
    public String getUpdateBy() {
        return updateBy;
    }

    /**
     * 设置修改人
     *
     * @param updateBy 修改人
     */
    public void setUpdateBy(String updateBy) {
        this.updateBy = updateBy;
    }

    /**
     * 获取最后修改时间
     *
     * @return gmt_modified - 最后修改时间
     */
    public Date getGmtModified() {
        return gmtModified;
    }

    /**
     * 设置最后修改时间
     *
     * @param gmtModified 最后修改时间
     */
    public void setGmtModified(Date gmtModified) {
        this.gmtModified = gmtModified;
    }

    /**
     * 获取审核不通过原因
     *
     * @return fail_reason - 审核不通过原因
     */
    public String getFailReason() {
        return failReason;
    }

    /**
     * 设置审核不通过原因
     *
     * @param failReason 审核不通过原因
     */
    public void setFailReason(String failReason) {
        this.failReason = failReason;
    }

    /**
     * 获取申请人姓名
     *
     * @return realname - 申请人姓名
     */
    public String getRealname() {
        return realname;
    }

    /**
     * 设置申请人姓名
     *
     * @param realname 申请人姓名
     */
    public void setRealname(String realname) {
        this.realname = realname;
    }

    /**
     * 获取提现方式
1.银行卡
2.支付宝
3.微信
     *
     * @return withdraw_way - 提现方式
1.银行卡
2.支付宝
3.微信
     */
    public Byte getWithdrawWay() {
        return withdrawWay;
    }

    /**
     * 设置提现方式
1.银行卡
2.支付宝
3.微信
     *
     * @param withdrawWay 提现方式
1.银行卡
2.支付宝
3.微信
     */
    public void setWithdrawWay(Byte withdrawWay) {
        this.withdrawWay = withdrawWay;
    }

    /**
     * 获取openid
     *
     * @return openid - openid
     */
    public String getOpenid() {
        return openid;
    }

    /**
     * 设置openid
     *
     * @param openid openid
     */
    public void setOpenid(String openid) {
        this.openid = openid;
    }
}